using Microsoft.Xna.Framework.Content;
using Microsoft.Xna.Framework.Graphics;

namespace Tomahawk.Runtime.Resources
{
    /// <summary>
    /// Interface for loadable resources
    /// </summary>
    public interface ILoadableResource
    {

        /// <summary>
        /// Load the resources at this point
        /// </summary>
        void LoadContents(GraphicsDevice myDevice, ContentManager myLoader);

        /// <summary>
        /// Must return false until the resources had been corretly loaded
        /// </summary>
        bool IsReady { get; }

        /// <summary>
        /// Indicates which content manager will be used to load the resource
        /// </summary>
        ResourceManager.ResourcePool ResourcePool { get; }

    }

}
